package com.codedog.entity;

import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
public class Student {
    private Long id;
    private Long userId;
    private Long customerId;
    //姓名
    private String fullName;
    private boolean userWechatBind;
    private String userWechatNickname;
    private String userWechatAvatarUrl;
    private String phone;
    private String encryptPhone;
    private String gradeName;
    private boolean hasWeChatGroup;
    private boolean isTransferred;
    private Integer reportReceiveState;
    private String reportReceiveRemark;
    private List<String> referralFlags;
    private Integer reserveCourseCount;
    private Integer lastPointId;
    private String lastPointName;
    private FormalCustomerState formalCustomerState;
    private Date lastFollowUpTime;
    private Long createTime;
    private String remark;
    private List<String> attendancePlans;
    private Integer close;
    private boolean closeClassFlag;
    private boolean inFlag;
    private Integer deletedFlag;
    private boolean renewedFlag;
    private boolean renewedNewFlag;
    private Integer currentAmount;
    private List<NctList> nctList;
    private String relativePackageOrderId;
    private Date payTime;
    private Integer exchangeStatus;
    private Integer signStatus;
    private String orderLink;
    private Date codeEndTime;
    private Integer managerId;
    private Long matchId;
    private String enterpriseWechatBodyName;
    private String teacherEnterpriseWechatMatchStateName;
    private String wechatHeadImg;
    private String wechatNickName;
    private String childNickName;
    private String parentName;
    private String wechatId;
    private List<String> workWechatBindInfoList;
    private Integer matchStatus;
    private String wechatRemarkName;
    private Integer age;
    private String sex;
    private Integer attendancePlanState;
    private String orderId;
    private Integer makeUpNum;
    private Integer attendanceCount;
    private List<String> tagTypeList;
    private Integer creationClassState;
    private List<String> creationSuitPackages;
    private List<CreationInfoList> creationInfoList;

    @Data
    class FormalCustomerState {
        private String name;
        private Integer code;
        private String desc;
    }

    @Data
    class NctList {
        private Long id;
        private String examMobile;
        private String examUserName;
        private Boolean hasUserPhoto;
        private String address;
        private String examinationType;
        private String levelName;
        private String examinationName;
        private Date examinationBeginTime;
        private Date examinationEndTime;
        private Date registerTime;
        private Date studentBeginTime;
        private String registerStatus;
        private String examStatus;
        private String examResult;
    }

    @Data
    class CreationInfoList {
        private String creationPackage;
        private String creationTeacher;
    }
}
